package GPSChallenge.obstaculo;

import Excepciones.NoConozcoAlVehiculoException;
import GPSChallenge.Representable;
import GPSChallenge.movimiento.ContadorDeMovimientos;
import GPSChallenge.movimiento.Posicion;
import GPSChallenge.vehiculo.Auto;
import GPSChallenge.vehiculo.Camioneta4x4;
import GPSChallenge.vehiculo.Moto;
import GPSChallenge.vehiculo.Vehiculo;

public class Piquete extends Obstaculo{
	
	public void interceptarA(Auto unAuto,Vehiculo unVehiculo) throws NoConozcoAlVehiculoException {
		
		unVehiculo.retroceder();
	}

	public void interceptarA(Camioneta4x4 camioneta4x4, Vehiculo vehiculo) throws NoConozcoAlVehiculoException {
		
		vehiculo.retroceder();
	}

	public void interceptarA(Moto moto, Vehiculo vehiculo) throws NoConozcoAlVehiculoException {
		
		ContadorDeMovimientos.obtenerInstancia().sumarMovimientos(2);
		
	}

	@Override
	public void representar(Representable visionObstaculo,Posicion posCalle) {
		
		visionObstaculo.representar(this, posCalle);
		
	}

}
